package com.taa.service;

import com.taa.dto.OrderCreateDTO;
import com.taa.dto.OrderDetailDTO;
import com.taa.dto.OrderSubmitDTO;

/**
 * @author: taa
 * @Desc:
 * @create: 2025-06-22 17:27
 **/
public interface IOrderService {

    /**
     * 创建订单
     * @param createOrderDTO 订单创建信息
     * @param userId 当前登录用户ID
     * @return 订单提交后返回的DTO
     */
    OrderSubmitDTO createOrder(OrderCreateDTO createOrderDTO, Long userId);

    /**
     * 根据订单号查询订单详情
     * @param orderNo 订单号
     * @param userId  当前登录用户ID (用于权限校验)
     * @return 订单详情DTO
     */
    OrderDetailDTO getOrderDetailByOrderNo(String orderNo, Long userId);

    /**
     * 更新订单状态
     * @param orderNo 订单号
     * @param status 新的状态
     */
    void updateOrderStatus(String orderNo, Integer status);
    
}
